Image domain compliance

ABSTRACT

Systems and methods for generating domain-compliant image data. Domain-specific usage rights may be evaluated. The domain-specific usage rights may be associated with the transfer of particular encoded image data to a particular computing system other than the computing system. The domain-specific usage rights may specify maximum allowable spatial frequency content of the particular encoded image data. Domain-compliant image data may be generated by removing particular disallowable spatial frequency content from the encoded image data prior to transfer to the particular computing system.

CROSS-REFERENCE

The present disclosure is related to U.S. patent application Ser. No.______ filed on ______, the entirety of which is hereby incorporated byreference for all purposes.

BACKGROUND

High-definition content providers may include terrestrial broadcasters,satellite broadcasters, cable broadcasters, digital video discs, andothers. Providers of high-definition content may market the same toconsumers as a premium service, and thus may be concerned aboutunauthorized use or usage. At the same time, however, the provider maybe interested in providing consumers the option of accessing particularhigh-definition content in a reduced resolution format, in the interestof providing the best possible service to the consumer(s). It maytherefore be beneficial to provide a mechanism that allowshigh-definition providers to protect premium services, whileconcurrently ensuring that consumer satisfaction is maintained.

SUMMARY

This Summary does not in any way limit the scope of the claimed subjectmatter.

In one aspect, a method for generating domain-compliant image data isdisclosed. The method may include evaluating, by a computing system,domain-specific usage rights that are associated with the transfer ofparticular encoded image data to a particular computing system otherthan the computing system, wherein the domain-specific usage rightsspecify maximum allowable spatial frequency content of the particularencoded image data. The method may further include generating, by thecomputing system and based on the evaluating, domain-compliant imagedata by removing particular disallowable spatial frequency content fromthe encoded image data prior to transfer to the particular computingsystem.

In another aspect, a computer-implemented method is disclosed that mayinclude receiving, by a computing system, a data stream of encodedpacketized content. The method may further include identifying, by thecomputing system, a particular encoded packet of the data stream ashaving video content that requires electronic scrambling prior to exportfrom the computing system to a different computing system. The methodmay still further include determining, by the computing system, aparticular threshold value that defines allowable spatial frequencies ofvideo content within the particular encoded packet, the thresholdassociated with the export of packetized content from the computingsystem to the different computing system. The method may still furtherinclude modifying, by the computing system, discrete cosine transform(DCT) coefficients of the particular encoded packet that exhibit amatrix column or row index value greater than the particular thresholdvalue to zero magnitude, without completely decoding the particularencoded packet.

In another aspect, a set-top-box is disclosed. The set-top-box mayinclude a first module configured to receive at least one video packet,and extract direct cosine transform (DCT) coefficients within the atleast one video packet without fully decoding the at least one videopacket. The set-top-box may further include a second module configuredto modify particular DCT coefficients of the at least one video packetthat exhibit a matrix column or row index value greater than a thresholdvalue to zero magnitude, wherein the threshold value defines allowablespatial frequencies of video content within the at least one videopacket and is associated with the export of packetized content from theset-top-box to a different computing system. The set-top-box may stillfurther include a third module configured to generate a particular videopacket, the video packet comprising particular DCT coefficients modifiedby the second module and including DCT coefficients of finite magnitudeassociated with allowable spatial frequency content, and DCTcoefficients of zero magnitude associated with disallowable spatialfrequency content.

DESCRIPTION OF THE DRAWINGS

A further understanding of the nature and advantages of variousembodiments may be realized by reference to the following figures. Inthe appended figures, similar components or features may have the samereference label. Further, various components of the same type may bedistinguished by following the reference label by a dash and a secondlabel that distinguishes among the similar components. When only thefirst reference label is used in the specification, the description isapplicable to any one of the similar components having the same firstreference label irrespective of the second reference label.

FIG. 1 illustrates an example method for generating domain-compliantimage data.

FIG. 2 illustrates an example satellite-based content distributionsystem.

FIG. 3 illustrates a simplified block diagram of an example set-top-box.

FIG. 4 illustrates an example matrix operation for generatingdomain-compliant image data.

FIG. 5 illustrates an example method for implementing exceptionfiltering for generating domain-compliant image data.

FIG. 6 shows an example computing system or device.

DETAILED DESCRIPTION

The present disclosure is directed to systems and methods fortransforming live or recorded HD (High-Definition) content into reducedresolution content based on domain-specific usage rights. In one aspect,the term “resolution” may refer to a greatest spatial frequency that isresolvable within particular content (e.g., an image), as opposed topixel count. The reduced resolution content may subsequently betransferred between particular computing systems or devices withoutviolating the usage rights. Although described in the context of asatellite-based content distribution system, the various aspects of thepresent disclosure may generally be applicable to any scenario in whichit is desirable to maximize the allocation of computing system or deviceresources, and/or dynamically tailor particular electronic content tocomply with one or more prevailing standards, laws, rules, regulations,and guidelines. For example, and referring now to FIG. 1, a method 100for generating domain-compliant image data is shown in accordance withthe principles of the present disclosure.

The example method 100 includes receiving (module 102), by a computingsystem, encoded and/or electronically scrambled HD content from aparticular HD content provider. For example, the computing system mayreceive an encoded bitstream, program stream, transport stream, or othertype of data stream, from a particular satellite broadcaster that atleast provides HD content. For example, HD video content may be at leastpacketized (e.g., in accordance with the MPEG-2 TS standard) and encoded(e.g., in accordance with one of the MPEG-2 ASP, MPEG-4 AVC/H.264, VC-1standards) within a transport stream in accordance with a particularstandard. In this example, particular data packets within the transportsteam comprising HD video content may be uniquely identified by aparticular video PID (Packet Identifier). In this manner, the computingsystem may resolve and aggregate many related data packets for thepurpose of reconstructing particular HD content, such as a televisionprogram and the like. An example of such a scenario is described infurther detail below in connection with FIG. 2. Other embodiments arehowever possible, and in certain embodiments a mechanism for resolvingand aggregating particular HD content may be implementation specific.For example, encoded HD content may be received from any type of HDcontent provider including, but not limited to, terrestrialbroadcasters, cable broadcasters, DVDs (Digital Video Discs), and manyother providers such as, for example, managed IP delivery (e.g., viaDVB-IPTV) and unmanaged IP delivery (e.g., via “Over the Top” service).In another example, encoded and/or electronically scrambled HD contentmay be received or otherwise retrieved by a particular computing systemfrom a particular local memory location. Still other embodiments arepossible.

The method 100 further includes determining (module 104), by thecomputing system, whether the received HD content (see module 102) hassufficient permission(s) to be directly (e.g., without modification)exported to another particular computing system or device in HD format,or whether the received HD content is restricted under some type or formof “access control” in which, for example, image resolution reduction ofthe HD content should be, or is required to be, performed prior to beingexported to another particular computing device. Such “access control”may be performed to ensure that particular access or usage rights areadequately or properly observed. For example, in the scenario of apreviously recoded electronically scrambled copy of HD content, aparticular parameterwithin the HD content, data packet(s) associatedwith the HD content, and may be private and/or proprietary, may indicatethat only a single electronically scrambled copy of the HD content mayexist. An example of such a parameter includes the“FTA_content_management_descriptor” as set forth within the DigitalVideo Broadcasting (DVB); Specification for Service Information (SI) inDVB System (ETSI EN 300 468 V1.9.1 2009-03) specification. In thisexample, and when it desired to create another copy of HD contentpossibly for export to a particular computing device, a determinationmay be made that image resolution reduction should be performed onassociated HD video content to ensure that certain usage rights areheeded or followed. For example, certain usage rights may require thatthe HD video content be “down-converted” into SD video content as a copyof the HD content is made. Since the SD video content is no longer HD byform and definition, the SD video content may in certain instances bedirectly exported to another particular computing system withoutconsideration of prevailing usage rights. In this manner, a provider ofthe HD content may be afforded a mechanism to protect the HD content,while at the same time a consumer may be provided the option to accessHD content in a reduced resolution format. Such an implementation isbeneficial in many respects. For example, the consumer would not berequired to purchase, download, stream, record, or store two distinctcopies of particular content.

In yet another example, a particular parameter within the received HDcontent may indicate that the HD content, or data packet(s) associatedwith the HD content, must in all circumstances be fully electronicallyscrambled in which the same is to be exported to another particularcomputing system or device in HD format. For example, in a firstscenario a particular parameter within the HD content may require thatexport of the HD content for displays (e.g., for television display)conform(s) to the HDMI (High-Definition Multimedia Interface) with HDCP(High-bandwidth Digital Content Protection). In a second scenario, aparticular parameter within data packet(s) associated with the HDcontent may require that export of the HD content for streaming files(e.g., for streaming HD content to a laptop over a home network)conform(s) to the DLNA (Digital Living Network Alliance) with DTCP-IP(Digital Transmission Copy Protection over Internet Protocol) standard.In these two example scenarios, however, the particular computing systemor device may not be adequately configured to support data transfer inaccordance with the HDMI/HDCP and/or DLNA/DTCP-IP standards. Thus,similar to the scenario of previously recoded copy of HD content asdescribed above, a determination may be made that image resolutionreduction (e.g., down-conversion to SD video content) should be, or isrequired to be, performed on respective HD video content to ensure thatparticular usage rights are observed.

Operational flow within the method 100 terminates (module 110, describedfurther below) when it is determined (see module 104) that received HDcontent does in fact have sufficient permission(s) to be directlyexported to another particular computing system or device in HD format.Otherwise, the method 100 further includes evaluating (module 106), bythe computing system, domain-specific usage rights associated with thereceived HD content. The domain-specific usage rights may be evaluatedat least for the purpose of identifying a maximum allowable spatialfrequency content that a modified, or down-converted, version ofparticular HD content is permitted to exhibit or contain when exportedto a particular computing device. In general, usage rights may be“domain-specific” because the usage rights may, in one embodiment, varybased on type and configuration of a particular content provider (e.g.,cable broadcasters, DVDs, etc.) and/or type of prevailing standard(e.g., national standard, international standard, proprietary standard,etc.) possibly in combination with one or more prevailing laws, rules,regulations, and/or guidelines. In this manner, the maximum allowablespatial frequency content may be quantified as a function of one or bothof a source of corresponding HD content, and a prevailing controlotherwise enforced for the purpose of protecting the HD-content contentfrom unauthorized use or usage. Further, in the present example, aparticular standard, law, rule, regulation, and/or guideline may be“prevailing” based on any number of factors such, for example, territoryin which export of particular HD content is expected to occur, currentstate of one or controlling authorities, and other factors as well.Particular usage rights may specifically refer to a domestic videoformat. For example, in the United Kingdom, a limit may correspond to D1“PAL”=720×576 pixels; in the United States, a limit may correspond to D1“NTSC”=720×480 pixels or square-pixel “NTSC”=640×480. Other limitsinclude 520,000 pixels per frame, and 320,000 pixels per frame, and350,000 pixels per frame. Allowable spatial frequencies may becalculated directly from such pixel resolutions. For example, a 480-linevideo may not store more than 240 cycles per picture height.

While many usage rights may be written in terms of pixel count, usagerights may also state that, having reduced a particular image to thatpixel count, the image may then be upscaled to another pixel count whendesired. For example, 1920×1080 content may be reduced to 720×480content, and then upscale back to 1920×1080 content. In this example,the original 1920×1080 content may be considered HD, the 720×480 contentmay be considered SD, and the upscaled 1920×1080 content, while havingthe pixel count of HD, may appear as “blurry” as the SD content, or“SD-like.” Thus, the SD-like version may be created by “filtering” theoriginal HD content, without requiring downscale to the 720×480 content.In accordance with the present disclosure, this may wholly be performedwithin, for example, with a DCT (Direct Cosine Transform) domain, asdescribed in further detail below.

The method 100 further includes generating (module 108), by thecomputing system, domain-compliant content by removing disallowablespatial frequency content from received HD content (see module 102). Inthe present example, this is performed in view of particulardomain-specific usage rights information (see module 106). Such anoperation may correspond to down-converting HD video content into SDvideo content, or “SD-like” video content. In general, “SD-like” mayrefer to HD pixel-count content that appears as if it has been upscaledfrom SD (i.e., particular HD content may appear as “blurry” as SD), andin the present example, SD video content may be “SD-like” because thedefinition of SD video content may be a variable function of“domain-specific” usage rights, described further below. Further, inaccordance with the principles of the present disclosure, thedown-converting of HD video content into SD or SD-like video content isperformed directly on encoded HD video content. More specifically,domain-compliant content may be generated without “fully” or“completely” decoding the HD content (i.e., “directly”). For example,and assuming for the sake of discussion that particular HD video contentis encoded in accordance with the MPEG-2 standard (the following exampleembodiment may be applicable to any number of image encoding/compressiontechniques or standards), a particular encoded HD video data packet maybe “deconstructed” or otherwise “unpacked” or “disassembled” to theextent that all DCT (Direct Cosine Transform) coefficients areaccessible. In the example embodiment, other elements of the HD videodata packet (e.g., motion vectors, etc.) may be considered ancillary forthe intended purpose, and thus need not be considered, decoded, operatedon, deconstructed, unpacked, disassembled, etc.

In the context of images, and as described in further detail below inconnection with FIG. 4, DCT coefficients may represent or otherwisequantify magnitude, and thus energy, of DC and AC spatial frequencycontent within a subset of pixels of a particular HD image (e.g., an 8×8block of pixels selected from a particular 1080p, 1080i, 720p, etc., HDimage). In the present example, domain-compliant content may begenerated by removing or otherwise modifying particular DCT coefficientsthat represent spatial frequencies within the particular HD image thatare greater than a particular SD resolution limit. Spatial frequenciesgreater than the particular SD resolution limit may correspond toHD-like spatial frequencies. In this manner, a particular encoded HDvideo packet may be converted to SD-like resolution by removing orotherwise modifying particular DCT coefficients. More specifically,respective HD video content may down-graded when spatial frequenciesgreater than a threshold value defined by a SD resolution limit areremoved from the HD video content. Following removal, or at leastmodification thereof as described further below, of particular DCTcoefficients, a particular encoded HD video data packet may be“reconstructed” or otherwise “repacked” or “reassembled” to the extentthat all modified DCT coefficients are reinserted therein. In thismanner, a modified, reduced image resolution (i.e., SD-like) video datapacket is formed. And, since the reduced image resolution video datapacket is HD in regards to pixel count only, and no longer contains anyof the information, resolution, or sharpness beyond that which ispresent in an SD image, the modified video data packet may be directlyexported (e.g., see module 110) to another particular computing systemwithout consideration of prevailing domain-specific usage rights.

Such an implementation as discussed in reference to FIG. 1 may bebeneficial in many respects, including at least maximizing allocation ofcomputing resources as part of generating domain-compliant image data,as well as adaptively populating spatial frequency content withinparticular domain-compliant image data on a “per-domain” basis. Morespecifically, computational power required to generate domain-compliantimage data may be lessened or minimized because the down-converting ofHD video content into reduced resolution content is performed directlyon encoded HD video content, without decoding the HD video content.Computational savings may reach, for example, 90% when compared totypical transcoding techniques that require full decode, then downscale,and then full re-encode when transforming particular HD content intoreduced resolution content. Additionally, spatial frequency content ofdomain-compliant image data may be tailored on a “per-domain” basisbecause in each instance such data is generated, prevailing usage rightsare evaluated to identify a “domain-specific” threshold value thatdefines a “domain-specific” SD resolution limit. The “domain-specific”SD resolution limit may be variable because it may be a function of typeand configuration of a particular content provider and/or type ofprevailing standard possibly in combination with one or more prevailinglaws, rules, regulations, and/or guidelines, as described above.

Further scenarios and beneficial aspects associated with transforminglive or recorded HD content into reduced resolution content based ondomain-specific usage rights are described below in connection withFIGS. 2-6.

Referring now to FIG. 2, a satellite-based content distribution system200 is shown. For the sake of brevity, the example system 200 isdepicted in simplified form, and may generally include more or fewersystems, devices, networks, and other components as desired. Further,number and type of features or elements incorporated within the system200 may or may not be implementation specific, and at least some of theaspects of the system 200 may be similar to a cable televisiondistribution system.

In the present example, the system 200 includes a service provider 202,a satellite uplink 204, a plurality of orbiting (e.g., geosynchronous)satellites 206 a-b (collectively, “satellites 206”), a satellite dish208, a STB (Set-Top Box) 210, a television 212, and a laptop 214. Thesystem 200 also includes an example network 216 that establishes abi-directional communication path for data transfer between the STB 210and the laptop 214. In general, the network 216 may incorporate orexhibit terrestrial and/or non-terrestrial network features or elements.For example, in one embodiment the network 216 may be any of a number ofwireless or hardwired packet-based communication networks such as, forexample, WAN (Wide Area Network), WLAN (Wireless Local Area Network),Internet, or other types of communication networks such that data may betransferred among respective elements of the example system 200. Otherembodiments are possible.

In practice, the satellites 206 may be configured to receive uplinksignals, such as uplink signals 218 a-b, from the satellite uplink 204.In this example, the uplink signals 218 a-b may contain one or moretransponder streams of particular data or content (e.g., a particulartelevision channel) that is supplied by the service provider 202. Forexample, each of the respective uplink signals 218 a-b may containvarious encoded HD television channels, various SD television channels,on-demand programming, programming information, and/or any other contentin the form of at least one transponder stream and in accordance with anallotted carrier frequency and bandwidth. In this example, differenttelevision channels may be carried using different ones of thesatellites 206. Different television channels may also be carried usingdifferent transponders of a particular satellite (e.g., satellite 206a); thus, such television channels may be transmitted at differentfrequencies and/or different frequency ranges. For example, a first andsecond television channel may be carried on a first carrier frequencyover a first transponder of satellite 206 a, and a third, fourth, andfifth television channel may be carried on second carrier frequency overa first transponder of satellite 206 b, or, the third, fourth, and fifthtelevision channel may be carried on a second carrier frequency over asecond transponder of satellite 206 a.

The satellites 206 may further be configured to relay the uplink signals218 a-b to the satellite dish 208 as downlink signals, such as downlinksignals 220 a-b. Similar to the uplink signals 218 a-b, each of thedownlink signals 220 a-b may contain one or more transponder streams ofparticular data or content, such as various encoded and/orelectronically scrambled television channels, on-demand programming,etc., in accordance with an allotted carrier frequency and bandwidth.The downlink signals 220 a-b, however, may not necessarily contain thesame content as a corresponding one of the uplink signals 218 a-b. Forexample, the uplink signal 218 a may include a first transponder streamcontaining at least a first group of television channels, and thedownlink signal 220 a may include a second transponder stream containingat least a second, different group of television channels. In otherexamples, the first and second group of television channels may have oneor more television channels in common. In sum, there may be varyingdegrees of correlation between the uplink signals 218 a-b and thedownlink signals 220 a-b, both in terms of content and underlyingcharacteristics.

Continuing with the above simplified example, the satellite dish 208 maybe provided for use (e.g., on a subscription basis) to receivetelevision channels provided by the service provider 202, satelliteuplink 204, and/or satellites 206. For example, the satellite dish 208may be configured to receive particular transponder streams, or downlinksignals (e.g., downlink signals 220 a-b), from the satellites 206.Additionally, the STB 210, which is communicatively coupled to thesatellite dish 208, may subsequently select via tuner, for example, andrelay particular transponder streams to one or both of the television212 and the laptop 214, for display thereon. For example, the satellitedish 208 and the STB 210 may, respectively, be configured to receive andrelay at least one premium HD-formatted television channel to thetelevision 212. In this example, the premium HD channel may be output tothe television 212 from the STB 210 in accordance with the HDMI/HDCPcontent protection technologies. In another example, the satellite dish208 and the STB 210 may, respectively, be configured to receive andrelay the premium HD channel to the laptop 214. In this example, thepremium HD channel may be output to the laptop 214 from the STB 210 inaccordance with the DLNA/DTCP-IP content protection technologies. Otherembodiments are possible.

In both of the above HDMI/HDCP and DLNA/DTCP-IP examples, usage rightsassociated with the viewing of the premium HD-formatted televisionchannel may be adequately preserved or otherwise observed. In general,this is because, in both scenarios, the output of the premiumHD-formatted television channel from the STB 210 is electronicallyscrambled in accordance with a particular standard, in an effort toprotect the premium content from unauthorized use or usage. In manyinstances, however, one or both of the television 212 and the laptop 214may not be adequately configured to prevent unauthorized access to thepremium HD-formatted television channel. For example, the laptop 214 maynot be configured to support any type of electronically scrambledinformation, much less the DLNA/DTCP-IP content protection technologies.In such a scenario, and in accordance with the principles of the presentdisclosure, a compliance engine 222 may be configured to reduce at leastthe video resolution of the premium HD-formatted television channel sothat content associated with the premium HD-formatted television channelmay be transferred to the laptop 214 without violating particular usagerights.

For example, referring now additionally to FIG. 3, a simplified blockdiagram of the STB 210 of FIG. 2 is shown including the complianceengine 222 and a communication interface 224. For brevity, a number ofother elements of the STB 210 are omitted from the present discussion.In an actual implementation, however, the STB 210 may be configured toinclude any number of other components or modules, and such componentsor modules may or may not be implementation specific. For example, theSTB 210 in certain implementations may be configured to include variouscomponents implemented in hardware, software, firmware, or anycombination thereof such as, a tuner, an EPG (Electronic ProgrammingGuide), at least one device and/or user interface, a NIT (NetworkInformation Table), a DVR (Digital Video Recorder), a demultiplexer, asmart card, a decryption engine, and other various modules orcomponents. An example description of such a set-top-box configurationmay be found within U.S. patent application Ser. No. ______ filed on______, the entirety of which is hereby incorporated by reference.

In the present example, the compliance engine 222 may include a packetdisassemble module 226, a usage rights module 228, a filter module 230,and a packet reassemble module 232. In some implementations, some ofthese features may be provided as part of an existing Conditional AccessSystem. In the present example, the communication interface 224 of theSTB 210 may be configured to enable the transfer of data or informationwith and between compatibly configured devices via multiple differentcommunication channels, and types of communication channels, some ofwhich may be implementation specific. For example, and referringintermittently to FIG. 2, the communication interface 224 may beconfigured to communicate or otherwise exchange information with thelaptop 214 over the network 216, as described above. In another example,while a primary communication channel may exist between the STB 210 andthe service provider 202 via satellites 206 (which may be unidirectionalto the STB 210), the communication interface 224 may be configured tocommunicate or otherwise exchange information with the service provider202 over a network (not shown), similar to the network 216. In stillanother example, such as a “plug and play” scenario, the communicationinterface 224 may be configured to communicate or otherwise exchangeinformation with any type or variety of peripheral computing device suchas, for example, a USB (Universal Serial Bus) device, a removable memorycard, a smartphone device, a video game console, and many others. Stillother embodiments of the communication interface 224 are possible.

In practice, the packet disassemble module 226 may receive a HD videopacket 234. In one embodiment, the HD video packet 234 may haveoriginated from a particular satellite broadcaster, where the HD videopacket 234 may have been at least packetized and encoded within atransport stream in accordance with a particular encoding and datacompression standard (e.g., MPEG, SMPTE 421M, etc.). Upon receipt of theHD video packet 234, the packet disassemble module 226 may “unpack” theHD video packet 234, and recover all DCT coefficients within the HDvideo packet 234, along with a particular parameter (e.g.,“FTA_content_management_descriptor”) that may be used identifydomain-specific usage rights associated with the received HD videopacket 234. For example, the particular parameter may be passed to theusage rights module 228 which may select, from a list for example, anassociated threshold value that defines a SD resolution limit whichquantifies a maximum allowable spatial frequency content that amodified, or down-converted, version of the HD video packet 234 ispermitted to exhibit or contain when exported to a particular computingdevice.

Upon identification thereof by the usage rights module 228, the SDresolution limit or threshold may be passed to the filter module 230. Inaddition, the DCT coefficients as recovered by the packet disassemblemodule 226 from the HD video packet 234 may be passed to the filtermodule 230. Upon receipt of the SD resolution threshold and respectiveDCT coefficients, the filter module 230 may apply a filtering operationthat at least modifies all DCT coefficients that represent disallowablespatial frequency content within a particular domain associated with theSD resolution threshold. For example, the filter module 230 mayimplement a stop-band filter to quantize to zero (0) magnitude all DCTcoefficients having a basis function that represents a spatial frequencygreater than the SD resolution threshold. In addition, and as describedin further detail below, the filter module 230 may implement one or bothof a pass-band filter and a transition-band filter such that whenconverted to the spatial domain, an image associated with DCTcoefficients as modified by the filter module 230 may appear to have“softened edges,” as opposed to having edges displaying perceivable“ringing artifacts” that may manifest as a ghosting pattern and thelike.

Upon respective filtering by the filter module 230, all “filtered” DCTcoefficients, either modified or non-modified, may be passed to thepacket reassemble module 232. Upon receipt of the filtered DCTcoefficients the packet reassemble module 232 may “repack” the filteredDCT coefficients into the HD video packet 234 to form a SD video packet236. In this manner, the HD video packet 234 is down-converted to areduced resolution. For example, at least all DCT coefficients having abasis function that represents a spatial frequency greater than theabove-mentioned SD resolution threshold may be replaced or quantized tozero (0) magnitude. Both the HD video packet 234 and the SD video packet236 though describe a video signal with the same number of pixels. Forexample, both the HD video packet 234 and the SD video packet 236 mayhave a pixel count of 1920×1080 pixels. Spatial frequencies (e.g.,equivalent to perceptible and measurable actual resolution) above the SDresolution threshold have been removed. Additionally, as described infurther detail below, all DCT coefficients having a basis function thatrepresents a spatial frequency less than the SD resolution threshold,but relatively close in energy to the SD resolution threshold, may bereplaced or quantized to a magnitude less than a magnitude of acorresponding original DCT coefficient. Such an implementation isbeneficial in many respects including at least softening “ringingartifacts” in the spatial domain as mentioned above.

Upon forming or generation thereof by the packet reassemble module 232the SD video packet 236 may be passed to the communication interface224. In this example, the SD video packet 236 may be exported accordingto any of a number of supported communication channels. For example, theSD video packet 236 may be exported to the laptop 214 via network 216,as described above. In another example, the SD video packet 236 may beexported to a USB device via a USB port. In both examples, since the SDvideo packet 236 no longer includes HD spatial frequencies, the SD videopacket 236 may be directly exported to the laptop 214 over the network216, for example, without consideration of prevailing domain-specificusage rights.

As mentioned above in connection with FIG. 3, the filter module 230 maybe configured to implement multiple filtering operations on DCTcoefficients of a particular HD video packet (e.g., HD video packet234). Referring now to FIG. 4, an example matrix operation forgenerating domain-compliant image data is shown. In particular, FIG. 4illustrates an example weighting matrix 402, an example DCT coefficientmatrix 404, and an example modified DCT coefficient matrix 406. In thisexample, each respective block of the DCT coefficient matrix 404 maycorrespond to a particular DCT basis function that represents DC or aparticular AC spatial frequency. For example, a basis functionassociated with block (0,0) of the DT coefficient matrix may representDC spatial frequency, a basis function associated with block (0,8) mayrepresent a very “high” horizontal AC spatial frequency, a basisfunction associated with block (8,0) may represent a very “high”vertical AC spatial frequency, and a basis function associated withblock (8,8) may represent a very “high” combination of vertical andhorizontal AC spatial frequencies, somewhat like a fine checkerboardpattern. Additionally, each respective block of the DCT coefficientmatrix 404 may be assigned an integer value that quantifies the strengthor energy of the corresponding particular DC or AC spatial frequency. Ingeneral, the integers may range from −1024 to 1023. These integer valuescorrespond to DCT coefficients. However, codecs based on differentbitdepths (e.g., 8-bit, 12-bit, etc.) and implementations based ondifferent numerical formats (e.g., signed integers, unsigned integers,floating point, logarithmic, etc.) may use different ranges and/orvalues to represent DCT coefficients.

Still referring to FIG. 4, a SD resolution threshold 408 of the DCTcoefficient matrix 404 may define a maximum allowable spatial frequencycontent that a modified, or down-converted, version of HD video contentis permitted to exhibit or contain when exported to a particularcomputing device, such as described above in connection with FIGS. 1-3.In this example, all DCT coefficients having either a row or columnindex value greater than or equal to seven (7) may be identified ashaving disallowable spatial frequency content. For example, block (1,7)and block (7, 1) may be identified as having a disallowable spatialfrequency content. However, other thresholds are possible. For example,in some implementations, a preferred transition may occur with a commonrow or column index value of three (3). In other implementations, apreferred transition may occur with a common row or column index valueof four (4). In other implementations, a preferred transition may occurwith a common row or column index value of five (5). Mapping the SDresolution threshold 408 to the weighting matrix 402, it is shown thatall blocks having either a row or column index value greater than orequal to seven (7) are populated with integer value zero (0).Element-by-element matrix multiplication (i.e., “Hadamard”) of the DCTcoefficient matrix 404 by the weighting matrix 402 may thus quantize allDCT coefficients having either a row or column index value greater thanor equal to seven (7) to zero (0) magnitude, as shown by the modifiedmatrix 406. The corresponding section of the modified matrix 406 may bereferred to as a stop-band 410, and a filter operation associated withthe stop-band 410 may be referred to as a stop-band filter.

By similar logic, a pass-band threshold 412 of the DCT coefficientmatrix 404 may define a maximum allowable spatial frequency content thata non-modified, or non-converted, version of HD content is permitted toexhibit or contain when exported to a particular computing device. Inother words, such spatial frequency content may correspond to typical SDcontent. In this example, all DCT coefficients having either a row orcolumn index value less than or equal to four (4) are identified ashaving spatial frequency content that may remain in unmodified form. Forexample, block (1,4) and block (4,1) are identified as having suchallowable spatial frequency content. Mapping the pass-band threshold 412to the weighting matrix 402, it is shown that all blocks having either arow or column index value less than or equal to four (4) are populatedwith integer value one (1). Element-by-element matrix multiplication ofthe DCT coefficient matrix 404 by the weighting matrix 402 may thus mapall DCT coefficients having either a row or column index value less thanor equal to four (4) as an unchanged value, as shown by the modifiedmatrix 406 where, for simplicity, it is assumed in this example that allDCT coefficients are originally quantized to two (2). The correspondingsection of the modified matrix 406 may be referred to as a pass-band414, and a filter operation associated with the pass-band 414 may bereferred to as a pass-band filter.

In some embodiments, the pass-band threshold 412 of the DCT coefficientmatrix 404 may approach the SD resolution threshold 408. For example,the pass-band threshold 412 and the SD resolution threshold 408 maycorrespond to a similar value and thus be coincident. Continuing withthe above-example, matrix operation of the DCT coefficient matrix 404 bythe weighting matrix 402 may still quantize all DCT coefficients havingeither a row or column index value greater than or equal to seven (7) tozero (0) magnitude. However, element-by-element matrix multiplication ofthe DCT coefficient matrix 404 by the weighting matrix 402 may quantizeor map all DCT coefficients having either a row or column index valueless than seven (7) to their original unchanged values (not shown). Anequivalent operation may be to copy or retain the wanted coefficientsand delete or “zero” unwanted coefficients. Such a filtering operationmay be referred to as a brick-wall filter. In general, a brick-wallfilter operation may introduce perceivably undesirable artifacts whenobserved in the spatial domain. For example, a “ringing artifact” may beobserved in the spatial domain (i.e., when viewing a particular imageassociated with the DCT coefficient matrix 404) that when viewed closelymay appear as amorphous, ghost-like images near lines within theparticular image (e.g., a blade of grass) that would otherwise appearsharply defined in HD. To address such undesirable effects, thepass-band threshold 412 may be defined to differ from the SD resolutionthreshold 408, such as shown in FIG. 4. In this example, a smoothing ortransition-band 416 is shown in the modified matrix 406.

For example, as shown in FIG. 4, all DCT coefficients having either arow or column index value greater than four (4) and less than seven (7)may be identified as having allowable spatial frequency content.However, in the weighting matrix 402 it is shown that all DCTcoefficients having either a row or column index value greater than four(4) and less than seven (7) are populated with integer value less thanone (1) but greater than zero (0). Element-by-element matrixmultiplication of the DCT coefficient matrix 404 by the weighting matrix402 in this example may thus quantize all DCT coefficients having eithera row or column index value greater than four (4) and less than seven(7) to a finite magnitude less than a magnitude of a correspondingoriginal DCT coefficient, as shown by the modified matrix 406, where,for simplicity, it is assumed in this example that all DCT coefficientsto two (2). As mentioned above, the corresponding section of themodified matrix 406 may be referred to as a transition-band 416, and afilter operation associated with the transition-band 416 may be referredto as a smoothing filter for example. Additionally, a transfer functionassociated with the transition-band 416 may be of any form as desiredsuch as, for example, power-law, exponential, logarithmic,raised-cosine, linear, weighted, etc. For example, as shown in FIG. 4, atransfer function associated with the transition-band 416 is of the form1/x. For example, block (1,5) of the modified matrix 406 is scaled by avalue of (0.5) and block (1,6) of the modified matrix 406 is scaled by avalue of (0.3), etc. Such an implementation is beneficial in that animage associated with modified, transition-band DCT coefficients of themodified matrix 406 may appear to have “softened edges,” as opposed tohaving edges displaying perceivable “ringing artifacts,” as discussedabove.

Referring now to FIG. 5, an example method 500 for implementingexception filtering for generating domain-compliant image data is shown.In general, the example method 500 may wholly or at least partiallyincorporated into the example method 100 of FIG. 1 for the purpose ofhandling one or more issues that may potentially be encountered ingenerating domain-compliant image data as described throughout. In oneembodiment, the example method 500 is implemented by the STB 210 of FIG.2. However, other embodiments are possible.

At operation 502, encoded HD content is received from a particular HDcontent provider. For example, the STB 210 may receive an encodedtransport stream from a particular satellite broadcaster that at leastprovides HD content. The HD video content may be packetized, and encodedwithin the transport stream in accordance with a particular MPEGstandard. Other embodiments are possible.

At operation 504, an evaluation may be made to determine whether thereceived HD content is associated with interlaced video. In the contextof interlaced video, a particular video frame does not consist of asingle picture. Rather the particular video frame may consist of twoseparate pictures woven together into a single frame. The two separatepictures may be referred to as “fields.” In general, two associatedfields may represent an image at slightly different moments in time, thefirst field for example being captured and displayed about 20milliseconds or about 17 milliseconds before the second field.Accordingly, while there may be 25 frames per second or about 30 framesper second, there may be 50 fields per second or about 60 fields persecond. Additionally, information in the first field may correspond tolines 1, 3, 5, 7, etc., of the single frame, while information in thesecond field may correspond to lines 2, 4, 6, 8, etc., of the singleframe in accordance with a manner by which the respective fields arecaptured (i.e., skipping every other line from a video sensor), and alsohow fields may be displayed on conventional CRT-based televisions.

Modern displays are mostly “progressive” displays, and may de-interlaceany interlaced video signal to generate a full 50 or approximately 60frames per second to send to a display for example. These displays mayaccomplish this by calculating or predicting “missing” lines from eachfield. In general, when there is little or no spatial movement, aninterlaced frame of a video may look very much like a progressive frameof video, and may be MPEG encoded as a progressive frame. When there issome movement, a particular frame may be split two separate fields,which then may be encoded separately. In other examples, an encoder mayrecognize movement, and adjust some encoding parameters to optimizeencoding of the full frame with the knowledge that the full frame isactually two separate fields, without fully separating the fieldsthemselves. Additionally, some encoders may retain some “field-like”coding when encoding motionless interlaced pictures, and some encodersmay retain some “frame-like” coding when encoding moving interlacedpictures. In still further examples, some encoders may use an entirelyincorrect mode for encoding interlaced pictures. In sum, there may besubstantial variability when encountering interlaced video.

When an evaluation at operation 504 is in the negative, process flow mayproceed to operation 506. When an evaluation at operation 504 is in theaffirmative, process flow may proceed to operation 508. Here, in thecontext of interlaced video, operation 508 may address theabove-mentioned variability (e.g., incorrect encoding) by, for example,only filtering horizontal resolution (e.g., via filter module 230) ofparticular encoded content. This may for example be implemented bydetermining that the particular content is associated with videointerlacing, and implementing a DCT filter operation to modify each DCTcoefficient associated with horizontal image resolution. For example,this may correspond to only filtering DCT coefficients that occur withincolumn one (1) of the DCT coefficient matrix 404. In this example, atypical resolution restriction that may be required to be met mayspecify 520,000 total pixels or less. An assumption may be made thatthis may be the equivalent of 940 pixels×540 pixels=507,600 pixels, or720 pixels×576 pixels=414,720 pixels. However, it may be equallyacceptable to output an equivalent of 480 pixels×1080 pixels=518,400pixels to meet the resolution requirement. In this example, theinterlacing may remain intact, at the expense of more radically reducinghorizontal resolution. Other embodiments are possible.

For example, in the DCT domain as described throughout, when video isencoded as fields, reducing the resolution of an interlaced video may beaccomplished by separating the video into separate fields and performinga “blurring” operation on the fields. In other words, applyingDCT-coefficient zeroing, removal, or scaling as described above, to DCTcoefficients for each particular field. When video is encoded as fieldswhen there is movement, and frames when there is none, then applyingDCT-coefficient processing to whatever DCT coefficients are stored,trusting that the original encoder has made an appropriate field/framechoice, may yield a video where the picture is more “blurry” duringmovement than when at rest, but this may be subjectively acceptable.When video contains sequences with “wrong” encoding, and fields areencoded as frames, then vertical “blurring” may blur the two fields,which represent two different moments in time, together. This may createquite an objectionable motion blur, ghosting, and stuttering ofmovement, and ideally should be avoided. To address such issues,however, an adaptive solution may be performed by understanding thenature of the movement and encoding of the interlaced video, and thenfiltering DCT coefficients based on the result of this analysis. Stillother embodiments are possible.

At operation 506, an evaluation may be made to determine whether toimplement a “de-blocking” algorithm. In example embodiments describedthroughout, by processing 8×8 DCT squares individually without concernfor contents of adjacent squares, visible blocking may be introducedwhere the edges of the DCT blocks no longer share similar pixel values.This may be prevalent where diagonal image components cut across thecorners of DCT blocks, appearing as high frequency “dots” at the cornerof one DCT block, such dots being removed by the processing. In moreadvanced codecs, it may be sufficient to trigger a deblocking filterbuilt into the decoder to hide this blocking. For example, in MPEG-4AVC/H.264, the SEI (Supplemental Enhancement Information) “Deblockingfilter display preference” metadata in the stream may be set to causedecoders to apply maximum deblocking (since there are no longer anygenuine high frequency components for overaggressive deblocking todamage). In many instances, the blocking may appear at locations wherecodecs generate similar blocking when being used at too-low a bit-ratefor given content, and as such, many devices (e.g., televisions) mayalready have algorithms built into them to detect such blocking, andfilter it out automatically—because it is already present in manybroadcasts, and broadcasters decrease the bitrate in order to fit moreTV channels into a given delivery platform. As such, on many devices,the blocking, even if left uncorrected by the decoder, may be invisible.

Some devices with limited processing power may skip even “mandatory”deblocking in the decoder, and do not apply a deblocking filter fordisplay. Some users disable deblocking filters. When targeting suchdevices/users, it may be necessary to adjust processing to reduce thevisibility of the blocks, for example analyzing the contents of theblocks, and specifically the edges, and maintaining any high frequencyDCT coefficients required to prevent the “blockiness” from occurring,while still removing others to reduce the resolution. This is anadaptive, content-based process that may be implemented in accordancewith the present disclosure, while still achieving computational savingssuch as described above. For efficiency, it may be necessary to restrictsuch processing to the macroblock level (e.g., 16×16 pixels).

When an evaluation at operation 506 is in the negative, process flow mayproceed to operation 510. When an evaluation at operation 506 is in theaffirmative, process flow may proceed to operation 512. Here, in thecontext of blocking/de-blocking, operation 512 may for example,implement a “de-blocking” processes by analyzing DCT blocks (e.g., viafilter module 230), specifically edges, and maintaining any highfrequency DCT coefficients required to prevent “blockiness” fromoccurring within the spatial domain, while still removing other DCTcoefficients to comply with image resolution reduction requirements asdescribed throughout. Accordingly, a process may be implemented atoperation 512 to prevent appearance of block-like artifacts within animage associated with the particular DCT coefficients (e.g., 8×8 DCTblocks). Other embodiments are possible.

At operation 510, an evaluation may be made to determine whether to add“low” levels of artificial noise or “grain” that may enhance theappearance of low resolution images and videos, giving a falsesubjective impression of higher resolution. In the DCT domain, havingremoved or attenuated high frequency components that are actuallypresent (e.g., to meet usage rights restrictions), it may be desirableto add-in simulated high frequency components that may provide a falsesubjective impression of fine detail(s) that may otherwise be present inHD. In some instances, various usage rights may state that, followingresolution reduction to meet image constraint criteria as describedthroughout, it is acceptable to further process the image, includingsharpening. Adding low level noise such that it is not obviouslyperceived as noise, but judged to be detail, may thus be an acceptablemethod of making an image more aesthetically pleasing.

When an evaluation at operation 510 is in the negative, process flow mayproceed to operation 514. When an evaluation at operation 510 is in theaffirmative, process flow may proceed to operation 516. Here, in thecontext of injecting noise to simulate high frequency content, operation516 may address this by setting higher frequency DCT coefficients torandom, but relatively “low” magnitude values. In practice, values thatare between 20 dB (decibels) and 40 dB below equivalent of peakluminance level may be used, for example, with individual coefficientsbeing chosen to, on their own, represent values towards a lower end ofthe range (e.g. −30 dB to −40 dB), but such that when all such DCTcoefficients are taken together and transformed via an IDCT (InverseDiscrete Cosine Transform), a result noise level may reach an upper endof the range (e.g. −30 dB to −20 dB). Further, exact amplitudes,frequencies, and random distribution of values may be adjusted based onwhat may potentially be subjectively pleasing, but for simplicity andefficiency would usually be constrained by quantization levels definedfor a given coefficient and block in original encoding. Otherembodiments are possible.

At operation 514, an evaluation may be made to determine whether anypicture information is present other than that which is stored with DCTcoefficients. For example, a number of codecs may preserve or simulatevery high frequency data which is not efficiently stored in DCTcoefficients. For example, the “Film grain characteristics SEI” from theMPEG-4 AVC/H.264 fidelity extensions, where the general nature of thefilm grain in a 35 millimeter film print, for example, that has beenencoded is represented parametrically, and reconstructed in a decoder,rather than being represented in DCT coefficients. However, permittingsuch high frequency content to pass in situations such as describedthroughout may violate usage rights.

When an evaluation at operation 514 is in the negative, process flow mayproceed to operation 518, corresponding to termination of the examplemethod 500. When an evaluation at operation 514 is in the affirmative,process flow may proceed to operation 520, corresponding to terminationof the example method 500. Here, in the context of very high frequencycontent, operation 516 may address such an issue by, for example,detecting such data within the received encoded content (see operation502), and either process the encoded content to remove allrepresentation of higher frequency content, for example by removingparameters that correspond to higher frequencies, or remove the encodedcontent entirely. Other embodiments are possible, and next, at operation518, the example method 500 terminates.

As discussed throughout, the present disclosure is directed to systemsand methods for transforming live or recorded HD content into reducedresolution content based on domain-specific usage rights, where thereduced resolution content may subsequently be transferred betweenparticular computing systems or devices without violating the usagerights. Aspects of the present disclosure however may be applicable inother scenarios as well such as, for example, transforming live orrecorded Ultra-HD content into reduced resolution HD content based ondomain-specific usage rights. Still other scenarios are possible.

Referring now to FIG. 6, an embodiment of an example computer system ordevice 600 is shown. An example of a computer system or device includesan enterprise server, blade server, desktop computer, laptop computer,personal data assistant, smartphone, gaming console, set-top-box, andany other type machine for performing calculations. The computer system600 may be wholly or at least partially incorporated as part ofpreviously-described computing devices, such as the STB 210, television212, and laptop 214 of FIG. 2. The example computer device 600 may beconfigured to perform and/or include instructions that, when executed,cause the computer system 600 to perform the method of FIGS. 1 and 6. Itshould be noted that FIG. 6 is meant only to provide a generalizedillustration of various components, any or all of which may be utilizedas appropriate. FIG. 6, therefore, broadly illustrates how individualsystem elements may be implemented in a relatively separated orrelatively more integrated manner.

The computer device 600 is shown comprising hardware elements that canbe electrically coupled via a bus 602 (or may otherwise be incommunication, as appropriate). The hardware elements may include aprocessing unit with one or more processors 604, including withoutlimitation one or more general-purpose processors and/or one or morespecial-purpose processors (such as digital signal processing chips,graphics acceleration processors, and/or the like); one or more inputdevices 606, which can include without limitation a remote control, amouse, a keyboard, and/or the like; and one or more output devices 608,which can include without limitation a presentation device (e.g.,television), a printer, and/or the like.

The computer system 600 may further include (and/or be in communicationwith) one or more non-transitory storage devices 610, which cancomprise, without limitation, local and/or network accessible storage,and/or can include, without limitation, a disk drive, a drive array, anoptical storage device, a solid-state storage device, such as a randomaccess memory (“RAM”), and/or a read-only memory (“ROM”), which can beprogrammable, flash-updateable, and/or the like. Such storage devicesmay be configured to implement any appropriate data stores, includingwithout limitation, various file systems, database structures, and/orthe like.

The computer system 600 might also include a communications subsystem612, which can include without limitation a modem, a network card(wireless or wired), an infrared communication device, a wirelesscommunication device, and/or a chipset (such as a Bluetooth™ device, an802.11 device, a WiFi device, a WiMax device, cellular communicationfacilities (e.g., GSM, WCDMA, LTE, etc.), and/or the like. Thecommunications subsystem 612 may permit data to be exchanged with anetwork (such as the network described below, to name one example),other computer systems, and/or any other devices described herein. Inmany embodiments, the computer device 600 will further comprise aworking memory 614, which can include a RAM or ROM device, as describedabove.

The computer system 600 also can comprise software elements, shown asbeing currently located within the working memory 614, including anoperating system 616, device drivers, executable libraries, and/or othercode, such as one or more application programs 618, which may comprisecomputer programs provided by various embodiments, and/or may bedesigned to implement methods, and/or configure systems, provided byother embodiments, as described herein. Merely by way of example, one ormore procedures described with respect to the method(s) discussed above,and/or system components might be implemented as code and/orinstructions executable by a computer (and/or a processor within acomputer); in an aspect, then, such code and/or instructions can be usedto configure and/or adapt a general purpose computer (or other device)to perform one or more operations in accordance with the describedmethods.

A set of these instructions and/or code might be stored on anon-transitory computer-readable storage medium, such as the storagedevice(s) 610 described above. In some cases, the storage medium mightbe incorporated within a computer system, such as computer device 600.In other embodiments, the storage medium might be separate from acomputer system (e.g., a removable medium, such as flash memory), and/orprovided in an installation package, such that the storage medium can beused to program, configure, and/or adapt a general purpose computer withthe instructions/code stored thereon. These instructions might take theform of executable code, which is executable by the computer system 600and/or might take the form of source and/or installable code, which,upon compilation and/or installation on the computer device 600 (e.g.,using any of a variety of generally available compilers, installationprograms, compression/decompression utilities, etc.), then takes theform of executable code.

It will be apparent to those skilled in the art that substantialvariations may be made in accordance with specific requirements. Forexample, customized hardware might also be used, and/or particularelements might be implemented in hardware, software (including portablesoftware, such as applets, etc.), or both. Further, connection to othercomputing devices such as network input/output devices may be employed.

As mentioned above, in one aspect, some embodiments may employ acomputer system (such as the computer system 600) to perform methods inaccordance with various embodiments of the invention. According to a setof embodiments, some or all of the procedures of such methods areperformed by the computer device 600 in response to processor 604executing one or more sequences of one or more instructions (which mightbe incorporated into the operating system 616 and/or other code, such asan application program 618) contained in the working memory 614. Suchinstructions may be read into the working memory 614 from anothercomputer-readable medium, such as one or more of the storage device(s)610. Merely by way of example, execution of the sequences ofinstructions contained in the working memory 635 might cause theprocessor(s) 604 to perform one or more procedures of the methodsdescribed herein.

The terms “machine-readable medium” and “computer-readable medium,” asused herein, refer to any medium that participates in providing datathat causes a machine to operate in a specific fashion. In an embodimentimplemented using the computer system 600, various computer-readablemedia might be involved in providing instructions/code to processor(s)704 for execution and/or might be used to store and/or carry suchinstructions/code. In many implementations, a computer-readable mediumis a physical and/or tangible storage medium. Such a medium may take theform of a non-volatile media or volatile media. Non-volatile mediainclude, for example, optical and/or magnetic disks, such as the storagedevice(s) 610. Volatile media include, without limitation, dynamicmemory, such as the working memory 614.

Common forms of physical and/or tangible computer-readable mediainclude, for example, a floppy disk, a flexible disk, hard disk,magnetic tape, or any other magnetic medium, a CD-ROM, any other opticalmedium, punchcards, papertape, any other physical medium with patternsof holes, a RAM, a PROM, EPROM, a FLASH-EPROM, any other memory chip orcartridge, or any other medium from which a computer can readinstructions and/or code.

Various forms of computer-readable media may be involved in carrying oneor more sequences of one or more instructions to the processor(s) 604for execution. Merely by way of example, the instructions may initiallybe carried on a magnetic disk and/or optical disc of a remote computer.A remote computer might load the instructions into its dynamic memoryand send the instructions as signals over a transmission medium to bereceived and/or executed by the computer device 600.

The communications subsystem 612 (and/or components thereof) generallywill receive signals, and the bus 602 then might carry the signals(and/or the data, instructions, etc. carried by the signals) to theworking memory 614, from which the processor(s) 604 retrieves andexecutes the instructions. The instructions received by the workingmemory 614 may optionally be stored on a non-transitory storage device610 either before or after execution by the processor(s) 604.

The methods, systems, and devices discussed above are examples. Variousconfigurations may omit, substitute, or add various method steps orprocedures, or system components as appropriate. For instance, inalternative configurations, the methods may be performed in an orderdifferent from that described, and/or various stages may be added,omitted, and/or combined. Also, features described with respect tocertain configurations may be combined in various other configurations.Different aspects and elements of the configurations may be combined ina similar manner. Also, technology evolves and, thus, many of theelements are examples and do not limit the scope of the disclosure orclaims.

Specific details are given in the description to provide a thoroughunderstanding of example configurations (including implementations).However, configurations may be practiced without these specific details.For example, well-known circuits, processes, algorithms, structures, andtechniques have been shown without unnecessary detail in order to avoidobscuring the configurations. This description provides exampleconfigurations only, and does not limit the scope, applicability, orconfigurations of the claims. Rather, the preceding description of theconfigurations will provide those skilled in the art with an enablingdescription for implementing described techniques. Various changes maybe made in the function and arrangement of elements without departingfrom the spirit or scope of the disclosure.

Also, configurations may be described as a process which is depicted asa flow diagram or block diagram. Although each may describe theoperations as a sequential process, many of the operations can beperformed in parallel or concurrently. In addition, the order of theoperations may be rearranged. A process may have additional steps notincluded in the figure. Furthermore, examples of the methods may beimplemented by hardware, software, firmware, middleware, microcode,hardware description languages, or any combination thereof. Whenimplemented in software, firmware, middleware, or microcode, the programcode or code segments to perform the necessary tasks may be stored in anon-transitory computer-readable medium such as a storage medium.Processors may perform the described tasks.

Furthermore, the example embodiments described herein may be implementedas logical operations in a computing device in a networked computingsystem environment. The logical operations may be implemented as: (i) asequence of computer implemented instructions, steps, or program modulesrunning on a computing device; and (ii) interconnected logic or hardwaremodules running within a computing device.

Although the subject matter has been described in language specific tostructural features and/or methodological acts, it is to be understoodthat the subject matter defined in the appended claims is notnecessarily limited to the specific features or acts described above.Rather, the specific features and acts described above are disclosed asexample forms of implementing the claims.

1. A method for generating domain-compliant image data, comprising:evaluating, by a computing system, whether particular encoded image datais restricted from direct export to a particular computing system otherthan the computing system based on domain-specific usage rights that areassociated with the transfer of encoded image data to the particularcomputing system and that are at least content provider-specific, andwherein the domain-specific usage rights specify maximum allowablespatial frequency content of the particular encoded image data;generating, by the computing system and based on the evaluating,domain-compliant image data by removing particular disallowable spatialfrequency content from the encoded image data prior to transfer to theparticular computing system when the particular encoded image data isrestricted from direct transfer to the particular computing system; andexporting the particular encoded image data to the particular computingsystem when the particular encoded image data is unrestricted fromdirect transfer to the particular computing system and thedomain-compliant image data when the particular encoded image data isunrestricted from direct transfer to the particular computing system. 2.The method of claim 1, further comprising: determining, by a computingsystem, that particular encoded image data requires scrambling prior totransfer to a particular computing system other than the computingsystem, the particular encoded image data received from one of a livestreaming video source and a particular memory location storing recordedvideo content; and removing disallowable spatial frequency contentwithout fully decoding the encoded image data.
 3. The method of claim 1,further comprising descrambling the encoded image data prior to removingdisallowable spatial frequency content.
 4. The method of claim 1,further comprising transferring the domain-compliant image data to atleast one of a particular data storage location and the particularcomputing system without scrambling according to a particular highdefinition image protocol.
 5. The method of claim 1, further comprisingevaluating domain-specific usage rights according to standard-specificusage rights.
 6. The method of claim 1, further comprising quantizingdisallowable spatial frequency content of the encoded image data to zeromagnitude.
 7. The method of claim 6, further comprising generatingdomain-compliant image data to include allowable spatial frequencycontent, and disallowable spatial frequency content quantized to zeromagnitude.
 8. The method of claim 7, further comprising modifying atleast a portion of the allowable spatial frequency content to exhibit afinite magnitude less than a corresponding original magnitude within theencoded image data.
 9. A computer-implemented method, comprising:receiving, by a computing system, a data stream of encoded packetizedcontent; identifying, by the computing system, a particular encodedpacket of the data stream as having video content that requireselectronic scrambling prior to export from the computing system to adifferent computing system; determining, by the computing system, aparticular threshold value that defines allowable spatial frequencies ofvideo content within the particular encoded packet, the thresholdassociated with the export of packetized content from the computingsystem to the different computing system; and modifying, by thecomputing system, discrete cosine transform (DCT) coefficients of theparticular encoded packet that exhibit a matrix column or row indexvalue greater than the particular threshold value to zero magnitude,without completely decoding the particular encoded packet.
 10. Themethod of claim 9, further comprising preserving DCT coefficients of theparticular encoded packet that exhibit a matrix column or row indexvalue less than the particular threshold value without fully decodingthe particular encoded packet.
 11. The method of claim 9, furthercomprising modifying DCT coefficients of the particular encoded packet,that exhibit a matrix column or row index value less than the particularthreshold value and greater than a second threshold value, to exhibit afinite magnitude less than a corresponding original magnitude.
 12. Themethod of claim 11, further comprising applying one of a power-lawtransfer function, an exponential transfer function, a linear transferfunction; a weighted transfer function, and a raised-cosine transferfunction to modify DCT coefficients of the particular encoded packetthat exhibit a matrix column or row index value less than the particularthreshold value and greater than the second threshold value.
 13. Themethod of claim 9, further comprising: determining that the particularencoded packet is associated with video interlacing; and implementing aDCT filter operation to modify each DCT coefficient, of the DCTcoefficients, that are associated with horizontal image resolution. 14.The method of claim 9, further comprising implementing a processpreventing appearance of block-like artifacts within an image associatedwith the DCT coefficients.
 15. The method of claim 9, further comprisingmodifying one or more of the DCT coefficients to exhibit an absolutemagnitude different from a corresponding original magnitude to simulatehigh frequency content.
 16. The method of claim 9, further comprising:identifying particular high frequency content; and modifying each of theDCT coefficients to zero magnitude.
 17. The method of claim 9, furthercomprising: identifying particular high frequency content; and removingeach of the DCT coefficients.
 18. The method of claim 9, furthercomprising one of: streaming the particular encoded packet to theparticular computing system over a network connection; and storing theparticular encoded packet to a particular memory location of thecomputing system.
 19. A set-top-box, comprising: a first moduleconfigured to receive at least one video packet that has a particularpixel count, and extract direct cosine transform (DCT) coefficientswithin the at least one video packet without fully decoding the at leastone video packet; a second module configured to modify particular DCTcoefficients of the at least one video packet that exhibit a matrixcolumn or row index value greater than a threshold value to zeromagnitude, wherein the threshold value defines allowable spatialfrequencies of video content within the at least one video packet and isassociated with the export of packetized content from the set-top-box toa different computing system; and a third module configured to generatea particular video packet that has the particular pixel count, the videopacket comprising particular DCT coefficients modified by the secondmodule and including DCT coefficients of finite magnitude associatedwith allowable spatial frequency content, and DCT coefficients of zeromagnitude associated with disallowable spatial frequency content. 20.The set-top-box of claim 19, further comprising at least onecommunication interface configured to: receive the particular videopacket; and stream the particular video packet to the differentcomputing system over a network connection; and store the particularvideo packet to a particular memory location of a particular computingdevice.
 21. The set-top-box of claim 19, wherein the second module isfurther configured to: preserve particular DCT coefficients that exhibita matrix column or row index value less than the threshold value; andmodify particular DCT coefficients, that exhibit a matrix column or rowindex value less than the threshold value and greater than anotherthreshold value, to exhibit a finite magnitude less than a correspondingoriginal magnitude.